<?php
namespace app\ClubAdmin\controller;
use think\Db;
use think\Controller;
use think\Session;
class VideosController extends Controller
{
    public function _initialize()
    {
        if (!Session::has('clubid'))
        {
            $this->redirect('index/index/index');
        }
    }

    public function index()
    {
        //  并且每页显示5条数据
         $list = Db::name('videos')->where('cid',Session::get('clubid'))->paginate(5);
        // 把分页数据赋值给模板变量list
       $this->assign('list', $list);
        // 渲染模板输出
          return $this->fetch('videos');
        
    }
    function add(){
       // var_dump($_FILES);die;
         $data=Db::name('videos')
        ->where('vname','=',input('vname'))
        ->select();
         $file=request()->file('vfile');
            $file->rule('uniqid');
            $info=$file->validate(['ext' =>'jpg,jpeg,png,gif,mp4'])
            ->move(ROOT_PATH . 'public' . DS . 'static' . DS . 'video');

            $res=[
                'vname'     =>input('vname'),
                'vfile' =>$info->getFilename(),
                'vintro' =>input('vintro'),
                'cid'=>Session::get('clubid'), 
            ];

            $data=Db::name('videos')
                ->insert($res);
            if ($data) {
                $this->redirect('ClubAdmin/videos_controller/index');
            } else {
                $this->error('添加失败', 'ClubAdmin/videos_controller/index');
            }
        }
    public function edit(){
      $vid=input('vid');
      $list=Db::name('videos')->where('vid',$vid)->find();
      echo(json_encode($list)) ;

    }

     public function update(){
       $picname=input('vfile');
       $vid=input('vid');
        //dump($cid);
        //exit;
       $file = request()->file('vfile');
         $pic="";
    // 移动到框架应用根目录/public/uploads/ 目录下
        if($file){
            $info = $file->rule('uniqid')->validate(['ext'=>'jpg,png,gif,jpeg,mp4'])->move(ROOT_PATH . 'public' . DS . 'static'. DS . 'video');
            //dump($file);exit;
            if($info){
                // 成功上传后 获取上传信息
                $pic=$info->getFilename();
            }else{
                // 上传失败获取错误信息
                echo $file->getError();
            }
        }
        $data=[
            'vname'=>input('vname'),
            'vintro' =>input('vintro'),
            'vfile'=>empty($pic)?$picname:$pic,  
        ]; 
        // dump($data);exit;
       if( Db::name('videos')->where('vid',$vid)->update($data)){
          $this->success('更新视频成功！');

        }
        else
          $this->error('更新视频失败');

    }
     public function delete($vid){
      //删除用户之前的先删除头像
      // $users=Db::name("users")->where("uid",$id)->select();///二维数组
       $list=Db::name("videos")->find($vid);//只查询一条记录
      //dump(Db::name("users")->getlastSQL());//打印原生sql语句
      //find方法和link方法
       $FJ=$list["vfile"];
       $file=ROOT_PATH."public".DS."static".DS."video".DS.$FJ;
       if (file_exists($file)) {
        unlink($file);
        //删除文件
       }
       if (Db::table("videos")->delete($vid)){
         $this->success("删除成功");
       }
       else{
         $this->error("删除失败");
       }
    }
     public function search(){
        $a=input('content');
     
        $sql=Db::table('videos')
        ->where('vname','like',$a)
        ->paginate(5);
        //dump($sql);

     $this->assign('list',$sql);
     return $this->fetch('videos');
    }
}